- DelBack:
- Syntax: DelBack [LINEBEGIN|WORD]. Löscht das
vorherige Zeichen (wie Backspace–Taste). Wenn die Schreibmarke nicht in Spalte
null steht wird das linksstehende Zeichen gelöscht, sonst das letzte Zeichen
der vorherigen Zeile – die aktuelle Zeile wird also mit der vorherigen Zeile
verbunden. Wenn das Schlüsselwort LINEBEGIN angegeben wird, werden alle
Zeichen bis zum Zeilenanfang gelöscht. DelBack WORD hingegen löscht das
Wort links von der Schreibmarke.
- Delete:
- Syntax: Delete [n|LINEEND|WORD].
Löscht das Zeichen unter der Schreibmarke (wie Del–Taste). Wird eine
Zahl n als Argument übergeben, wird die angegebene Anzahl
Zeichen (Vorgabe: 1) gelöscht. Bei der Angabe des Schalters
LINEEND werden alle Zeichen bis zum Zeilenende gelöscht, die
nachfolgende Zeile wird jedoch nicht angehängt. Delete WORD löscht
das Wort unter der Schreibmarke. Wenn die Schreibmarke auf einem
Delimeter (Komma, Punkt, Doppelpunkt, ...) steht, wird nicht nur das
Wort rechts von der Schreibmarke gelöscht, sondern auch alle
davorstehenden Delimeter.
- DelLines:
- Syntax: DelLines [n]. Löscht n
Zeilen ab der aktuellen Zeile. Wird der Befehl ohne Parameter aufgerufen, wird
eine Zeile gelöscht (Vorgabe).
- GetASCII:
- Resultat: code. Liefert den ASCII-Code
code des Zeichens unter der Schreibmarke.
- InsASCII:
- Syntax: InsASCII code. Fügt ein Zeichen
mit dem ASCII-Code code an der aktuelle Position ein. Dieser Befehl
ermöglicht es insbesondere, Formatierungszeichen (z.B. einen Zeilenumbruch) in
den Text einzufügen.
- Insert:
- Syntax: Insert string. Fügt den als
Parameter übergebenen Text string an der aktuellen Position der
Schreibmarke ein. Die Syntax entspricht der des ARexx-Befehls Echo. Da der
Befehl nur einen Parameter kennt, kann string auch
Leerzeichen enthalten, d.h. es könne quasi beliebig viele (durch
Leerzeichen getrennte) Argumente übergeben werden, die zu einem einzigen
langen String verknüpft und eingefügt werden. Dieser String darf
alle Zeichen des ASCII-Codes beinhalten, insbesondere auch Tabulatoren und
Zeilenumbrüche.
Das folgende Beispiel fügt den Namen der Datei an der Cursorposition in den
Text ein:
/* Beispiel für Insert */
OPTIONS RESULTS /* Ergebnisse übermitteln */
Get FILENAME /* Dateiname mit Pfad besorgen */
Insert "Dateiname:" RESULT /* und einfügen */
- LinkChanges:
- Faßt alle bis zum Aufruf von „LinkChangesDone``
folgenden Veränderungen am Text zu einer einzigen Änderung zusammen.
So ist es möglich, eine beliebige Anzahl von Änderungen durch einen
einzigen Aufruf von „Undo`` rückgängig zu machen. Dieser Befehl ist
in Verbindung mit „LinkChangesDone`` beliebig tief schachtelbar.
Innerhalb eines solchen Blocks bleiben die Befehle „Undo (ALL)``
und „Redo (ALL)`` jedoch ohne Wirkung.
Das folgende Beispiel aktualisiert eine genormte Informationszeichenkette
mit dem Format /* $info: dd/mm/yy, hh:mm:ss, version n */:
/* Beispiel für LinkChanges & LinkChangesDone */
OPTIONS RESULTS
Get POSITION /* alte Position merken */
p0=RESULT
DisplayOff /* Darstellung ausschalten */
Set POSITION 0 /* von Beginn an suchen */
Find NEXT "$info:" /* Anfang suchen */
Get POSITION /* Position erfragen */
IF RESULT > 0 THEN DO /* gefunden? */
LinkChanges /* Änderungen zusammenfassen */
Right 10 /* zum Datum gehen */
Delete 8 /* altes Datum löschen: dd/mm/yy */
Insert DATE(European) /* neues Datum einsetzen */
Right 2 /* zur Zeitmarke gehen */
Delete 8 /* alte Zeit löschen: hh:mm:ss */
Insert TIME() /* neue Zeit einsetzen */
Right 10 /* zur Versionsnummer gehen */
Read WORD /* Versionsnummer einlesen */
ver=RESULT+1 /* Version um eins erhöhen */
Delete WORD /* alte Versionsnummer löschen */
Insert ver /* neue Versionsnummer einsetzen */
Title "Version:" ver /* --> Titelleiste */
LinkChangesDone /* fertig */
END
ELSE
Title "Keinen Versionsstring gefunden!"
Set POSITION p0 /* zur alten Position zurückgehen */
DisplayOn /* Fensterinhalt aktualisieren */
- LinkChangesDone:
- Schließt den Block aller seit dem korrespondierenden
Aufruf von „LinkChanges`` vorgenommenen Änderungen ab.
- Read:
- Syntax: Read [n|LINE|WORD]. Resultat:
string. Liest n Zeichen/eine Zeile/ein Wort aus dem Text. Ohne
Angabe von Parametern wird ein Zeichen gelesen. Die gelesene Zeichenkette
wird als Resultat string zurückgegeben und kann, wenn die Schreibmarke
am Ende des Textes stand, auch leer sein.
- Redo:
- Syntax: Redo [ALL]. Resultat:
1|0.
Macht den vorherigen Aufruf von „Undo`` rückgängig, so daß die letzte Änderung
erneuert wird. Um alle zurückgenommenen Änderungen wieder vorzunehmen, muß der
Schalter ALL angegeben werden. Ob der Befehl wirklich durchgeführt wurde,
läßt sich dem Ergebnis entnehmen (Redo ALL liefert jedoch immer 1).
Wichtiger Hinweis: Die Anzahl der Schritte die zurückgenommen werden
können ist letztendlich abhängig von der Einstellung im Dialogfenster
„Bearbeitung`` (s. Seite
).
- Replace:
- Syntax: Replace [NEXT|PREV
[ICASE|WORD|LINKCHGS|ALL search replace]].
Resultat:
1|0.
Sucht die Zeichenkette search
und ersetzt sie durch replace. NEXT und PREV geben
die Suchrichtung an, ICASE, WORD, LINKCHGS und
ALL sind Zusatzoptionen die die Arbeitsweise des Befehls steuern:
NEXT |
vorwärts suchen |
PREV |
rückwärts suchen |
ICASE |
Groß-/Kleinschreibung nicht unterscheiden |
WORD |
nur Wörter ersetzen |
LINKCHGS |
Änderungen zusammenfassen (bez. ALL) |
ALL |
alle Vorkommen ohne Rückfrage ersetzen |
Das Kommando funktioniert, abhängig von den übergebenen Parametern, auf drei
verschiedene Arten:
- Wenn der Befehl mit Suchrichtung, evtl. Optionen und Such– und
Ersetze–String aufgerufen wird, ersetzt er das nächste bzw. alle
(Option ALL) Vorkommen von search durch replace.
- Wird nur die Suchrichtung (PREV, NEXT) angegeben, werden die
Optionen (außer ALL und LINKCHGS) und die Zeichenketten
search und replace von dem letzten Aufruf des Befehls bzw.
den dort im Dialogfenster getätigten Eingaben übernommen, und
dementsprechend das nächste Vorkommen ersezt.
- Wenn der Befehl ohne Parameter aufgerufen wird, kann der Benutzer in einem
Dialogfenster alle benötigten Parameter selbst einstellen. Die dort
vorgenommenen Einstellungen werden beim nächsten Aufruf von Replace NEXT/Replace
PREV übernommen (s.a. „Ersetzen``, Abschnitt
, Seite
).
Das Ergebnis gibt an, ob Vorkommen ersetzt wurden. Es ist dann 0, wenn der
Benutzer im Dialogfenster „Abbrechen`` gewählt hat, oder die gesuchte
Zeichenkette nicht gefunden werden konnte.
- ToLower:
- Syntax: ToLower [WORD]. Wandelt den markierten Bereich
bzw. das Wort unter dem Cursor in Kleinschreibung um.
- ToUpper:
- Syntax: ToUpper [WORD]. Wandelt den markierten Bereich
bzw. das Wort unter dem Cursor in Großschreibung um.
- Undo:
- Syntax: Undo [ALL]. Resultat:
1|0.
Macht die vorhergehende Änderung rückgängig. Undo ALL macht alle gemerkten
Änderungen rückgängig. Das Ergebnis lautet dann 0, wenn die vorherige Änderung
nicht rückgängig gemacht werden konnte, weil entweder der Text in seinem
ursprünglichen Zustand ist (null Änderungen), oder die vorhergehende Änderung
nicht aufgezeichnet wurde (Undo-Speicher zu klein, s.a. „Bearbeitung``,
Seite
).